1. Field of the Invention
The present invention relates to a traffic monitoring equipment for use in providing best-effort type communication services through public networks for supporting computer-to-computer highspeed data communications, a system to provide such services and a method for datagram transfer.
2. Description of the Related Art
Data units whose delivery through a network is not guaranteed, such as the internet protocol packets used in the Internet, are called datagrams. The network for providing communication services by means of transferring the datagrams is called datagram transfer network. The system for realizing the datagram transfer network is called datagram transfer system. In such a datagram transfer system, a datagram transmission node (it is equivalent to the router used in the Internet, for example), is used to forward a datagram of a certain length according to the destination address given in the header of the datagram. In such a datagram transmission node, when datagrams of a volume exceeding its processing capacity are received in a very short time interval (such state is known as congestion), received datagrams are discarded regardlessly. For this reason, the datagram transfer network can only provide best-effort type communication services within the framework of “the network aims to deliver individual datagrams to their intended destination address on a best-effort basis within the capability of the transfer devices operating within the network”.
FIG. 19 shows a block diagram of the general configuration of a datagram transmission node used in the conventional network described above, which includes a plurality of incoming interface sections (referred to as incoming I/F sections hereinbelow) 1, a plurality of outgoing interface sections (referred to as outgoing I/F sections hereinbelow) 2, both of which are connected to a back plane switch section 3. The back plane switch section 3 is able to transfer datagrams from any incoming I/F section 1 to any outgoing I/F section 2 without causing internal blocking.
FIG. 20 shows the details of the incoming I/F section 1 in the equipment shown in FIG. 19. The incoming I/F section 1 consist of a line I/F section 1a, a forwarding address table 1b, a transfer processing section 1c, and a datagram transmision section 1d. Here, in the incoming I/F section 1, upon receiving a datagram from an incoming link in the line I/F section 1a, the fransfer processing section 1c refers to the forwarding address table 1b to determine the destination outgoing I/F section 2, and forwards the received datagram to the corresponding datagram transmisstion section 1d so as to transmit the received datagram to the destination outgoing I/F section 2 through the back plane switch section 3.
FIG. 21 shows the details of the outgoing I/F section 2 in the equipment shown in FIG. 19. The outgoing I/F section 2 is consists of a datagram receiving section 2a, a buffer memory 2b, a buffer enqueue control section 2c, a buffer dequeue control section 2d, and a line I/F section 2e. Here, in the outgoing I/F section 2 upon receiving a datagram from the back plane switch section 3 in the datagram receiving section 2a, the buffer enqueue control section 2c enters the datagram in the buffer memory 2b according to processing method implemented in it, and the received datagram waits for an outgoing link to become available. In other words, as shown in the flowchart in FIG. 22, incoming I/F section 1 is selected according to a pre-determined sequence (usually in the ascending order of I/F numbers) (step S1), and is checked whether a datagram has been received from the selected incoming I/F section 1 (step S2). If there is a datagram, it is entered in the vacant spaces in the buffer memory 2b (step S3), and if there are incoming I/F sections 1 still to be processed (step S4), the steps subsequent to step S1 are repeated. Oherwise, this procedure is terminated. When there are n pieces of incoming I/F sections 1 to be processed, processing for the incoming I/F section 1 must be performed at n times the speed of the unit processing of the outgoing link (which is usually the reciprocal of a time interval required to transmit one datagram). In the meantime, when the line I/F section 2e becomes vacant, the buffer dequeue control section 2d transfers datagrams from the buffer memory 2b to the line I/F section 2e, in the sequence of datagrams entry. Then, the datagrams are transmitted from the line I/F section 2e to the outgoing link.
In the conventional datagram transmission node, processing method for the buffer enqueue control section 2c in the outgoing I/F section 2 is such that, so long as there are available memory spaces in the buffer memory 2b, datagrams are entered in the order of their arrival. The processing method based on a combination of the above method of entering datagrams with the sequential reading method in the buffer dequeue control section 2d, which reads datagram according to the sequence of their entry, is called first-in-first-out (FIFO) method, because a datagram arriving first is output first.
On the other hand, if datagrams arrive when there are no vacant memory spaces in the buffer memory 2b, normally they are all discarded. However, especially in the Internet, the utilization of a link can be increased by avoiding exhaustion of the available spaces in the buffer memory 2b and preventing the necessity for discarding many datagrams all at once. For this reason, the router in the Internet uses the random early detection (RED) method so that, even if there are vacant memory spaces in the buffer memory 2b, datagrams are discarded beforehand according to a certain probability, which is dependent on the utilization of the buffer memory 2b. 
FIG. 23 shows a data entry procedure according to the RED method. In this method, incoming I/F sections 1 are selected according to a pre-determined sequence (step S1), and arrival of a datagram from the incoming I/F sections 1 is checked (step S2), and a rough value for the buffer utilization factor is estimated (step S5), and a probability value for entering the datagram in the buffer memory 2b is obtained according to the estimate (step S6), and a transfer potential is judged based of the probability (step S7), and when the datagram is not to be transferred, the datagram is discarded according to the judgement results even when there are vacant spaces available within the buffer memory 2b. 
It can be realized that as far as the methods of entering datagrams in the buffer memory in the conventional datagram transmission node are concerned, in the FIFO method, datagrams are processed in the order of their arrival, and in the RED method even though, the packets are discarded according to the utilization of the buffer memory 2b, datagrams are basically entered in the buffer memory 2b in the order of their arrival, and when spare memory spaces are not available, datagrams are discarded. Furthermore, the decision to transfer or discard datagrams is made, not on the basis of information on the datagrams themselves but on the basis of information obtained at outgoing I/F section2, such as the utilization of the buffer memory 2b, according to some criterion, for example, when there is no vacancy in the buffer memory or when the vacancy falls below 10%.
However, in the datagram transfer system based on such conventional methods, the datagram transmission node performs transfer process according to the arrival sequence of datagrams by considering only the information obtained at the outgoing I/F section 2, such that it is possible for one user to acquire more network resources than other users if that one user sends more datagrams in a short time interval, even though a high number of datagrams will be discarded in such a situation. If a large volume of datagrams is sent out for the purpose of acquiring more network resources than other users, individual datagram transmission nodes can experience congestion, resulting in discarding a large volume of datagrams to be processed by the node. The result is that the number of datagrams that reach the ultimate destination without being discarded decreases dramatically so that the effective data transfer capability of the entire system suffers, in other words, the system experiences a congestion collapse.